#include <gflags/gflags.h>
#include "spdlogger.hpp"
#include <thread>
/*
    测试二次封装的spdlogger
*/

DEFINE_bool(mode, false, "日志输出模式，true:发布模式，false:调试模式");
DEFINE_int32(release_level, 0, "发布模式下日志记录等级，此等级以上日志都记录");
DEFINE_string(file, "file.txt", "发布模式下日志输出文件");

int main(int argc, char* argv[])
{
    // 解析命令行参数
    google::ParseCommandLineFlags(&argc, &argv, true);

    // 初始化日志记录器
    ns_spdlogger::init_logger(FLAGS_mode, FLAGS_release_level, FLAGS_file);

    LOG_TRACE("{}说：{}", "小明", "hello");
    LOG_DEBUG("{}说：{}", "小明", "hello");
    LOG_INFO("{}说：{}", "小明", "hello");
    LOG_ERROR("{}说：{}", "小明", "hello");
    LOG_WARN("{}说：{}", "小明", "hello");
    LOG_FATAL("{}说：{}", "小明", "hello");

    return 0;
}